{T}

Zabbix 自动发现和自动注册

0. 引言

企业规模扩大后,几百上千台主机要一台台手工加入监控系统,既不现实也容易漏配。Zabbix 提供自动发现和自动注册两种机制,让主机从发现、添加、配置到监控全流程自动化。本文讲解这两种模式的原理与配置方法。

1. Zabbix 及其优势

Zabbix 是主流开源企业级监控系统,核心特性:

  • 功能丰富:图形化界面、网络拓扑、自定义面板,自带 CMDB 资产管理功能,支持数据聚合分析;
  • 高可用:支持 proxy 代理模式,客户端先上报代理节点再统一汇总到 server,降低 server 压力;server 支持 HA 切换;
  • 采集模式多样:自带 agent,也支持 SNMP、JMX 等公共协议;支持主动(服务端抓取)与被动(客户端上报)两种模式;可自定义插件(监控脚本、主机模板、主机组模板);
  • 开放集成:提供完整 API,方便接入企业 DevOps 或运维管理系统。

2. 两种自动化纳入模式

Zabbix 对海量主机监控信息的管理高度自动化,有两种模式:

模式触发方原理适用场景
自动发现服务端server 发起扫描,探测局域网内的网络设备、服务器、主机并收集信息已知网段、服务端可主动可达
agent 主动注册客户端agent 启动后主动上报主机信息,在服务端完成注册主机分散、跨网络,服务端不易主动扫描

3. 自动发现配置

3.1 配置发现规则

在 Zabbix 控制台按顺序点击 Configuration → Discovery → Create discovery rule,关键配置项:

  • Name:规则名称;
  • Discovery by proxy:未使用代理时选 no proxy;
  • IP range:定义扫描的主机网段;
  • Update interval:扫描周期;
  • Checks:监控项检查,如 system.uname 获取客户端主机元数据;
  • Device uniqueness:主机唯一性标识,可选 IP address 或主机元数据。

3.2 配置执行动作

在 Configuration → Actions 新建 Discovery 类型 action,包含三部分:

  • Conditions(条件):定义匹配条件,如主机 IP 范围,多个条件通过 Type of calculation 设置 and/or 关系;
  • Operations(操作):定义满足条件后执行的动作,核心三类:
    • Add host:将发现的主机加入主机列表;
    • Add to host groups:加入主机组(如默认的 Linux servers);
    • Link to templates:关联监控模板(如 Template OS Linux by zabbix agent),此后就能按模板采集数据并画图。

3.3 客户端配合

确认 zabbix_agentd.conf 中关键配置:

bash
Server=172.21.64.12          # zabbix server 的 IP
ServerActive=172.21.64.12    # 主动上报 zabbix server 的 IP
HostMetadataItem=system.uname # 通过 system.uname 动态获取主机元数据

重启 agent 后等待扫描周期,在控制台 Monitoring → Discovery 列表或主机列表中即可看到自动添加的新主机。

4. agent 主动上报配置

主动上报模式同样需要配置两大块:

  • 服务端:Configuration → Actions 新建 auto registration 规则,条件设为 Host metadata contains linux(主机元数据包含 Linux),Operations 与自动发现模式相同(Add host、Add to host groups、Link to templates);
  • 客户端zabbix_agentd.conf 中配置 ServerActive 指向服务端,并设置 HostMetadataItem 提供元数据。

agent 启动后主动上报,服务端按规则自动完成主机添加、分组和模板关联。

5. 小结

自动发现适合服务端可控网段内扫描纳管;agent 主动注册适合跨网络、分散部署的主机。两者都只需"规则 + 动作 + 模板"三步配置,配合好后主机录入和监控管理从手工操作变成全自动化。结合 46 章讲到的告警分级,Zabbix 的自动纳入能力是海量主机监控体系建设的第一公里。

下一章介绍 Prometheus 与 Grafana 容器监控方案,对比 Zabbix 看云原生时代的监控选型。